apache 限制指定user_agent

        有些user_agent 不是我们想要的,可以通过rewrite功能针对 %{HTTP_USER_AGENT} 来rewirete到404页,从而达到限制某些user_agent的请求。

        配置如下

1
2
3
4
5
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^.*Firefox/4.0* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*Tomato Bot/1.0* [NC]
RewriteCond %{REQUEST_URI} !^/404*
RewriteRule .* /404.html

        请注意,404.html千万别再跳转到其他页面了,否则很有可能就会死循环了。

        其实rewrite到404.html 并不是很好的办法,而apache的rewrite功能有一项就是forbidden ,那就是 F

        配置如下

1
2
3
4
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^*Firefox/4.0* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^*Tomato Bot/1.0* [NC]
RewriteRule .* - [F]